package ln.javatest.day17.demo03;
//定义子类
public class Zi extends FU{
    @Override
    public void sayHello() {
        System.out.println("我是重写的父类方法");
    }
    //定义一个方法参数传递Greetable接口
    public void method(Greetable g){
        g.greet();
    }

    public void show(){
        //调用method方法，方法的参数Greetable是一个函数式接口，所以可以传递Lambda
        /*method(()->{
            //创建父类FU对象
            FU h = new FU();
            //调用父类的sayHello方法
            h.sayHello();
        });*/

        /*//因为有子父类关系，所以存在一个关键字super，代表父类，所以我们可以直接使用super调用父类的成员方法
        method(()->super.sayHello());*/

        /*
        使用super引用类的成员方法
        super是已经存在的
        父类的成员方法sayHello也是已经存在的
        所以我们可以直接使用super引用父类的成员方法
        */
        method(super::sayHello);
    }

    public static void main(String[] args) {
        new Zi().show();
    }
}
